package com.bgrconsulting.stockorderentry.service.model;

import javax.jdo.annotations.IdGeneratorStrategy;
import javax.jdo.annotations.PersistenceCapable;
import javax.jdo.annotations.Persistent;
import javax.jdo.annotations.PrimaryKey;
import javax.xml.bind.annotation.XmlRootElement;

import com.google.appengine.api.datastore.Key;

@XmlRootElement(name = "accountBalance")
@PersistenceCapable
public class AccountBalance {
	@PrimaryKey
    @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
    private Key key;
	
	@Persistent
	private String masterAccount;
	
	@Persistent
	private String accountId;
	
	@Persistent
	private Double cashAvailaleForWithDrawal;
	
	@Persistent
	private Double netAccountValue;
	
	@Persistent
	private Double netCash;
	
	@Persistent
	private Double sweepDepositAmount;
	
	@Persistent
	private Double totalLongValue;
	
	@Persistent
	private Double totalSecuritiesMktValue;
	
	
	public AccountBalance(String accountId, String masterAccount, double cashAvailaleForWithDrawal, double netAccountValue, double netCash, double sweepDepositAmount, Double totalLongValue, Double totalSecuritiesMktValue) 
	{
		this.accountId = accountId;
		this.masterAccount = masterAccount;
		this.cashAvailaleForWithDrawal = cashAvailaleForWithDrawal;
		this.netAccountValue = netAccountValue;
		this.netCash = netCash;
		this.sweepDepositAmount = sweepDepositAmount;
		this.totalLongValue = totalLongValue;
		this.totalSecuritiesMktValue = totalSecuritiesMktValue;
	}
    
	public AccountBalance() {
		
	}
	
	public void setMasterAccount(String masterAccount) {
		this.masterAccount = masterAccount;
	}
	
	public String getMasterAccount() {
		return this.masterAccount;
	}
	
	public void setAccountId(String accountId) {
		this.accountId = accountId;
	}
	
	public String getAccountId() {
		return this.accountId;
	}
	
	public void setCashAvailableForWithDrawal(Double cashAvailaleForWithDrawal) {
		this.cashAvailaleForWithDrawal = cashAvailaleForWithDrawal;
	}
	
	public Double getCashAvailableForWithDrawal() {
		return this.cashAvailaleForWithDrawal;
	}
	
	public void setNetAccountValue(Double netAccountValue) {
		this.netAccountValue = netAccountValue;
	}

	public Double getNetAccountValue() {
		return this.netAccountValue;
	}
	
	public void setNetCash(Double netCash) {
		this.netCash = netCash;
	}
	
	public Double getNetCash() {
		return this.netCash;
	}
	
	public void setSweepDepositAmount(Double sweepDepositAmount) {
		this.sweepDepositAmount = sweepDepositAmount;
	}
	
	public Double getSweepDepositAmount() {
		return this.sweepDepositAmount;
	}
	
	public void setTotalLongValue(Double totalLongValue) {
		this.totalLongValue = totalLongValue;
	}
	
	public Double getTotalLongValue() {
		return this.totalLongValue;
	}
	
	public void setTotalSecurituesMktValue(Double totalSecuritiesMktValue) {
		this.totalSecuritiesMktValue = totalSecuritiesMktValue;
	}
	
	public Double getTotalSecurituesMktValue() {
		return this.totalSecuritiesMktValue;
	}
	
	public void setKey(Key key) {
	    this.key = key;
	}
	
	public Key getKey() {
	    return this.key;
	}
}
